package com.kukudexin;

import java.lang.reflect.InvocationTargetException;

/**
 * @author: 酷酷的鑫
 * @Date: 2021/12/8 14:43
 * @description:
 */
public class InvokeTest {

    public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
        InvokeTest invokeTest = new InvokeTest();
        Object returnString = invokeTest.getClass().getMethod("returnString", String.class).invoke(invokeTest, new Object[]{"123"});
        System.out.println(returnString);
    }
    /**
     * 有参数有返回值的方法
     */
    public String returnString(String input) {
        return "returnString(String input) Success!/n=>parameter1:" + input;
    }

    /**
     * 有参数无返回值的方法
     */
    public void outputFromInput(String input) {
        System.out.println("outputFromInput(String input) Success! /n=>Parameter1:"+ input);
    }

    /**
     * 无参数无返回值的方法
     */
    public void noParameter() {
        System.out.println("noParameter() Success! /n=>No Parameter!");
    }

    /**
     * 多个参数无返回值的方法
     */
    public void multiParameter(String a, String b) {
        System.out.println("multiParameter(String a , String b) Success!/n=>Parameter1:"+ a + " Parameter2:" + b);
    }
}
